package com.lh.tams.dao.system;

import java.util.ArrayList;
import java.util.List;

import org.springframework.stereotype.Repository;

import com.lh.tams.controller.qo.NoticeQo;
import com.lh.tams.dao.base.HibernateBaseDao;
import com.lh.tams.util.DataGridModel;
import com.lh.tams.util.DateUtil;
import com.lh.tams.util.Page;

/**
 * 公告管理DAO
 * @author liulin
 * @version 2012-05-17
 */
@Repository
public class NoticeDao extends HibernateBaseDao{
	
	/**
	 * 分页查询
	 * @param dgm
	 * @param dept
	 * @return
	 */
	public Page query(DataGridModel dgm,NoticeQo noticeQo){
		List<Object> args=new ArrayList<Object>();
		StringBuilder hql=new StringBuilder();
		hql.append("from TamsNotice tn where 1=1");
		if(noticeQo.getTitle()!=null&&!"".equals(noticeQo.getTitle())){
			hql.append(" and tn.title like ?");
			args.add("%"+noticeQo.getTitle()+"%");
		}
		if(noticeQo.getStartDate()!=null&&!"".equals(noticeQo.getStartDate())){
			hql.append(" and tn.createDate>=?");
			args.add(noticeQo.getStartDate());
		}
		if(noticeQo.getEndDate()!=null&&!"".equals(noticeQo.getEndDate())){
			hql.append(" and tn.createDate<?");
			args.add(DateUtil.next(noticeQo.getEndDate(), 1));
		}
		return super.queryForList(hql.toString(), args.toArray(), dgm.getPage(), dgm.getRows());
	}
	
	/**
	 * 批量删除
	 * @param ids
	 */
	public void delete(long[] ids){
		super.delete("TAMS_NOTICE", ids);
	}
}
